---
Checks:          '*,
                  -*-avoid-c-arrays,
                  -*-uppercase-literal-suffix,
                  -*-magic-numbers,
                  -altera-id-dependent-backward-branch,
                  -altera-unroll-loops,
                  -android*,
                  -bugprone-integer-division,
                  -cert-dcl50-cpp,
                  -cert-env33-c,
                  -cert-err34-c,
                  -cert-err58-cpp,
                  -cert-flp30-c,
                  -cert-msc30-c,
                  -cert-msc50-cpp,
                  -clang-analyzer-core.CallAndMessage,
                  -clang-analyzer-core.NullDereference,
                  -clang-analyzer-core.UndefinedBinaryOperatorResult,
                  -clang-analyzer-core.uninitialized.Assign,
                  -clang-analyzer-core.VLASize,
                  -clang-analyzer-cplusplus.NewDelete,
                  -clang-analyzer-cplusplus.NewDeleteLeaks,
                  -clang-analyzer-deadcode.DeadStores,
                  -clang-analyzer-optin.cplusplus.VirtualCall,
                  -clang-analyzer-optin.performance.Padding,
                  -clang-analyzer-security.FloatLoopCounter,
                  -clang-analyzer-security.insecureAPI.strcpy,
                  -clang-analyzer-unix.API,
                  -clang-analyzer-unix.cstring.BadSizeArg,
                  -clang-analyzer-unix.Malloc,
                  -clang-analyzer-unix.MallocSizeof,
                  -cppcoreguidelines-c-copy-assignment-signature,
                  -cppcoreguidelines-interfaces-global-init,
                  -cppcoreguidelines-no-malloc,
                  -cppcoreguidelines-owning-memory,
                  -cppcoreguidelines-pro-bounds-array-to-pointer-decay,
                  -cppcoreguidelines-pro-bounds-constant-array-index,
                  -cppcoreguidelines-pro-bounds-pointer-arithmetic,
                  -cppcoreguidelines-pro-type-const-cast,
                  -cppcoreguidelines-pro-type-cstyle-cast,
                  -cppcoreguidelines-pro-type-member-init,
                  -cppcoreguidelines-pro-type-reinterpret-cast,
                  -cppcoreguidelines-pro-type-union-access,
                  -cppcoreguidelines-pro-type-vararg,
                  -cppcoreguidelines-special-member-functions,
                  -fuchsia-*,
                  -google-build-using-namespace,
                  -google-explicit-constructor,
                  -google-global-names-in-headers,
                  -google-readability-casting,
                  -google-readability-function-size,
                  -google-readability-namespace-comments,
                  -google-readability-todo,
                  -google-runtime-int,
                  -google-runtime-references,
                  -hicpp-deprecated-headers,
                  -hicpp-explicit-conversions,
                  -hicpp-function-size,
                  -hicpp-member-init,
                  -hicpp-no-array-decay,
                  -hicpp-no-assembler,
                  -hicpp-no-malloc,
                  -hicpp-signed-bitwise,
                  -hicpp-special-member-functions,
                  -hicpp-use-auto,
                  -hicpp-use-equals-default,
                  -hicpp-use-equals-delete,
                  -hicpp-use-override,
                  -hicpp-vararg,
                  -llvmlibc-*,
                  -llvm-header-guard,
                  -llvm-include-order,
                  -llvm-namespace-comment,
                  -misc-incorrect-roundings,
                  -misc-macro-parentheses,
                  -misc-misplaced-widening-cast,
                  -misc-redundant-expression,
                  -misc-unconventional-assign-operator,
                  -misc-unused-parameters,
                  -modernize-deprecated-headers,
                  -modernize-loop-convert,
                  -modernize-pass-by-value,
                  -modernize-raw-string-literal,
                  -modernize-return-braced-init-list,
                  -modernize-use-auto,
                  -modernize-use-bool-literals,
                  -modernize-use-default-member-init,
                  -modernize-use-equals-default,
                  -modernize-use-equals-delete,
                  -modernize-use-override,
                  -modernize-use-trailing-return-type,
                  -modernize-use-using,
                  -modernize-use-trailing-return-type,
                  -performance-inefficient-string-concatenation,
                  -readability-avoid-const-params-in-decls,
                  -readability-container-size-empty,
                  -readability-else-after-return,
                  -readability-function-size,
                  -readability-implicit-bool-cast,
                  -readability-implicit-bool-conversion,
                  -readability-inconsistent-declaration-parameter-name,
                  -readability-named-parameter,
                  -readability-non-const-parameter,
                  -readability-redundant-declaration,
                  -readability-static-accessed-through-instance,
                  -readability-static-definition-in-anonymous-namespace,
                 '
WarningsAsErrors: '*'
CheckOptions:
  - key:             google-readability-function-size.BranchThreshold
    value:           '600'
  - key:             google-readability-function-size.LineThreshold
    value:           '4000'
  - key:             google-readability-function-size.StatementThreshold
    value:           '4000'
...
